1. Technical Field
The present invention relates generally to cellular wireless communication systems; and more particularly to the transmission of data communications in cellular wireless communication systems.
2. Related Art
Cellular wireless communication systems support wireless communication services in many populated areas of the world. While cellular wireless communication systems were initially constructed to service voice communications, they are now called upon to support data communications as well. The demand for data communication services has exploded with the acceptance and widespread use of the Internet. While data communications have historically been serviced via wired connections, cellular wireless users now demand that their wireless units also support data communications. Many wireless subscribers now expect to be able to “surf” the Internet, access their email, and perform other data communication activities using their cellular phones, wireless personal data assistants, wirelessly linked notebook computers, and/or other wireless devices. The demand for wireless communication system data communications will only increase with time. Thus, cellular wireless communication systems are currently being created/modified to service these burgeoning data communication demands.
Significant performance issues exist when using a cellular wireless communication system to service data communications. Cellular wireless communication systems were initially designed to service the well-defined requirements of voice communications. Generally speaking, voice communications require a sustained bandwidth with minimum signal-to-noise ratio (SNR) and continuity requirements. Data communications, on the other hand, have very different performance requirements. Data communications are typically bursty, discontinuous, and may require a relatively high bandwidth during their active portions.
To understand the difficulties in servicing data communications within a cellular wireless communication system, it is best to first consider the structure and operation of a cellular wireless communication system. Cellular wireless communication systems include a “network infrastructure” that wirelessly communicates with wireless subscriber units within a respective service coverage area. The network infrastructure typically includes a plurality of base stations dispersed throughout the service coverage area, each of which supports wireless communications within a respective cell (or set of sectors). The base stations couple to base station controllers (BSCs), with each BSC serving a plurality of base stations. Each BSC couples to a mobile switching center (MSC). Each BSC also typically directly or indirectly couples to the Internet.
In operation, a wireless subscriber unit communicates with one (or more) of the base stations. Transmissions from a BSC to a wireless subscriber unit are referred to as “forward link” transmissions and transmissions from a wireless subscriber unit to its servicing base station are referred to as “reverse link” transmissions. A BSC coupled to the servicing base station routes voice communications between the MSC and the serving base station. The MSC routes the voice communication to another MSC or to the public switched telephone network (PSTN). BSCs route data communications between a servicing base station and a packet data network that couples to the Internet and other networks. The wireless link between the base station and the wireless subscriber unit is defined by one of a plurality of operating standards, e.g., AMPS, TDMA, CDMA, GSM, etc. These operating standards, as well as new 3G and 4G operating standards, define the manner in which the wireless link may be allocated, setup, serviced and torn down. Generally, a wireless link between a base station and a serviced wireless subscriber unit is serviced by a respective wireless channel that is time varying. Data that is transmitted between the base station and the serviced wireless subscriber unit is arranged in physical layer frames that typically carry a preamble, a header, data, and a trailer.
Each base station supports a number of wireless subscriber units but is limited in its total transmit power. This total transmit power must be allocated among the number of serviced users. Because of limitations on allocated transmit power and because of the time varying nature of respective wireless channels corresponding to the number of serviced users, the data carried by any particular physical layer frame may be received erroneously. Such an event is referred to as a “frame error”. The rate at which frame errors occur is known as the Frame Error Rate (FER). While some wireless cellular systems include mechanisms at the physical layer to detect frame errors, other wireless cellular systems do not include error detection at the physical layer and rely upon higher protocol layer operations to detect such errors. As is known, as allocated transmit power is increased, FER decreases, and vice versa. However, an increase in the transmit power for any given link increase interference and typically reduces the transmit power that may be allocated to other links.
Operation of the higher protocol layers requires error free delivery of data. In an attempt to provide error free delivery of data, higher layer protocols such as the Radio Link Protocol (RLP) layer and the Transmission Control Protocol (TCP) layer include Automatic Repeat reQuest (ARQ) operations.
With negative ARQ operations, a Negative AcKnowledgement (NAK) is sent from a receiving device to a transmitting device when the receiving device erroneously receives a data segment or when the receiving device determines that a transmitted data segment has been lost, e.g., when data segments surrounding a lost data segment have been received. The NAK identifies the data segment and, upon receipt of the NAK, the transmitting device retransmits the data segment.
With positive ARQ operations, an ACKnowledgement (ACK) is sent from a receiving device to a transmitting device when the receiving device correctly receives data. The transmitting device determines that retransmission is required when an ACK is not received for a respective data segment within a particular period of time, i.e., before a Retransmission Time Out (RTO) period expires. The transmitting device sets a RTO timer for each data segment upon its transmission. If the RTO timer for the data segment expires prior to receipt of a corresponding ACK, the transmitting device automatically retransmits the data segment.
The TCP layer uses positive ARQ operation and RTO detection. In determining an appropriate RTO value, the TCP layer periodically measures the Round-Trip Time (RTT) experienced during a data communication. RTT varies over time and TCP tracks these changes in the RTT. In the original TCP specification, the RTT was smoothed using a low-pass filter R=0.9*R+0.1*N, where R is the old RTT value and N is the newly measured RTT. Then the recommended retransmission timeout value was set to RTO=2*R. Later, the RTO was modified to consider not only the RTT values but also their variance. The RTO calculations were modified such that: RTO=R+2*D, where R=(7/8)*R+(1/8)*N, and D=(3/4)*D+(1/4)*abs(R−N), which included both the RTT value (R) and its mean deviation (D). Later, the impact of variance in the RTT was increased by changing the mean deviation multiplication factor from 2 to 4, such that RTO=R+4*D. Typically, TCP RTO determination algorithms model the delay along the network path as a normally distributed random variable with slowly varying mean and standard deviation.
In order to maximize system throughput, retransmission of data segments should only occur when the data segments are erroneously received or when they are permanently lost prior to receipt. In an attempt to meet these goals, the determined RTO must be small enough to detect lost data segments but large enough to avoid unnecessary retransmissions of data segments that are not lost but only delayed. Unfortunately, these are conflicting goals. The existing TCP RTO selection algorithms works well when either the delay variance is low or the data segment loss is low. However, when delay variance and data loss rates are both high, the existing TCP RTO selection algorithms work poorly, especially when the mean delay is also high.
In a cellular wireless communication system, the RTT value, its mean deviation, and packet loss are all often high. Therefore, existing RTO calculation algorithms are generally inadequate for TCP layers serviced by cellular wireless communication systems, especially in the case of “finite burst” data communications. With “finite burst” data communications, Supplemental Channels (SCHs) are constantly allocated and released. For example, in one mode of 1×RTT operations in which one or more SCH(s) is shared among a plurality of users, each SCH is allocated to one of the users, released from the user after 5.12 seconds, and then reallocated to the user (or another user) after a delay period, e.g., 1 second. This pattern of allocation, release, and reallocation continues until the completion of the data communications. These operations result in fluctuating bandwidth, from the perspective of the TCP layer, where bandwidth oscillates as the SCH is allocated and released during the data communication. Because such bandwidth oscillation is not generally present in wired networks, empirically designed TCP algorithms that were developed for wired networks do not function well in these types of cellular wireless communication systems.
Thus, there exists a need in the art for improved ARQ operations that may be used within cellular wireless communication systems that support fluctuating bandwidth operations.